1. Field of the Invention
The preferred embodiments of the present invention are directed generally to computer systems and computer system architectures for implementing hot pluggable main memory. More particularly, the preferred embodiments are directed to servers having an architecture that supports hot pluggable memory boards with features such as hot spare, main memory mirroring, and the like. More particularly still, the preferred embodiments are directed to implementing hot pluggable memory boards in computer system running under X86 system architectures with off-the-shelf operating systems such as Windows® by Microsoft, Inc
2. Background of the Invention
Most home computer systems implement an X86 architecture running either an Intel microprocessor, for example, an Intel Pentium 4 microprocessor, or processors of one of the competitors of Intel, such as Applied Micro Devices (AMD). Further, for the most part, home computers also use Microsoft products as the operating system, typically some form of the Windows® operating system. However, Microsoft also makes a Windows® operating systems for use in server systems.
Most operating system manufacturers offer their operating systems as relatively unmodifiable. That is, while providing operating systems for computers, rarely, if ever, will the operating system manufacturer modify the operating systems at the request of Original Equipment Manufacturers (OEMs) such as Hewlett Packard, Dell, and the like. Because of this rigidity in meeting the requests of servers system OEMs, in the related art computer manufacturers wishing to implement systems with non-standard architectures and features had to develop their own operating systems, or supply their servers with operating systems provided by other operating system manufacturers. For example, the ability to recover from a main memory error would be a desirable feature in a server, but currently available off-the-shelf operating systems for servers do not support the functionality necessary to accomplish this task.
Customers who purchase server equipment, however, prefer working with known or familiar systems, such as the Windows®-based system. Because of this familiarity, individuals and corporations who purchase server systems prefer, and seek out vendors who offer, servers running the familiar operating systems. Competition in the server marketplace is fierce, and therefore, each server manufacturer looks for ways to add features to offered server products which distinguish the server products from their competitor's products. Without the support of the operating system manufacturer, however, it is difficult to implement server features such as hot pluggable main memory, main memory error recovery, mapping out of failed main memory after watch dog timer time out, swapping to hot spare memory after experiencing correctable and non-correctable failure of the primary memory, logging of main memory errors for later trouble-shooting purposes, and the like.
Thus, what is needed in the art, to distinguish the various server products which use X86 architectures and Microsoft operating systems, is a way to provide features for server equipment, such as the various main memory features discussed immediately above, in spite of the rigidity associated with using an off-the-shelf operating system.